home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / elk-2_0.lha / elk-2.0 / lib / xaw / porthole.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-11-22  |  1.2 KB  |  38 lines

  1. #include "../xt/xt.h"
  2. #include <X11/Xaw/Porthole.h>
  3.  
  4. static SYMDESCR Panner_Syms[] = {
  5.     { "slider-x",       XawPRSliderX },
  6.     { "slider-y",       XawPRSliderY },
  7.     { "slider-width",   XawPRSliderWidth },
  8.     { "slider-height",  XawPRSliderHeight },
  9.     { "canvas-width",   XawPRCanvasWidth },
  10.     { "canvas-height",  XawPRCanvasHeight },
  11.     { 0, 0 }
  12. };
  13.  
  14. static Object S_Porthole_ReportCallback (x) XtArgVal x; {
  15.    Object ret = Null;
  16.     XawPannerReport *p = (XawPannerReport *)x;
  17.     GC_Node;
  18.  
  19.     GC_Link (ret);
  20.     ret = Cons (Make_Integer (p->canvas_height), ret);
  21.     ret = Cons (Make_Integer (p->canvas_width), ret);
  22.     ret = Cons (Make_Integer (p->slider_height), ret);
  23.     ret = Cons (Make_Integer (p->slider_width), ret);
  24.     ret = Cons (Make_Integer (p->slider_y), ret);
  25.     ret = Cons (Make_Integer (p->slider_x), ret);
  26.     ret = Cons (Bits_To_Symbols ((unsigned long)p->changed, 1, Panner_Syms),
  27.     ret);
  28.     GC_Unlink;
  29.     return ret;
  30. }
  31.  
  32. init_porthole () {
  33.     XtResourceList r = 0;
  34.     Define_Class ("porthole", portholeWidgetClass, r, 0);
  35.     Define_Callback ("porthole", "reportCallback", 1);
  36.     Define_Converter_To_Scheme ("porthole-reportCallback", S_Porthole_ReportCallback);
  37. }
  38.